import { ElNotification } from "element-plus";
import { Router } from "vue-router";

// 修改入参类型为字面量联合类型，并接收router作为参数
export const toTransfer = (type: '1' | '2' | '3', router: Router) => {
    if (!localStorage.getItem('senderAddress')) {
        ElNotification({
            title: '失败',
            message: `您还未登录，请先登录`,
            type: 'error',
        })
        return // 添加return阻止后续执行
    }

    const map = {
        '1': '居民',
        '2': '社保局',
        '3': '雇主',
    } as const  // 使用as const精确类型

    const currentType = localStorage.getItem('type') as '1' | '2' | '3' | null // 类型断言

    if (currentType === type) {
        ElNotification({
            title: '成功',
            message: '您已登录，为你跳转页面',
            type: 'success',
        })

        if (type === '1') {
            router.push('/user/standalone/profile');
        } else {
            router.push('/user/index/welcome');
        }
    } else {
        // 使用非空断言，因type已被限制类型
        const typeName = map[type]!
        ElNotification({
            title: '失败',
            message: `您不是${typeName}，请先登录${typeName}`,
            type: 'error',
        })
    }
}

export const formatDateTime = (dateTime: string) => {
    if (!dateTime) return '';

    try {
        const dayjs = require('dayjs');
        return dayjs(dateTime).format('YYYY-MM-DD HH:mm:ss');
    } catch (error) {
        console.error('日期格式化错误:', error);
        return dateTime;
    }
}
